thin.imports('/public/configure/conf.project.js');
thin.imports('/public/configure/conf.bp.js');
thin.imports('/public/plug/FormCombox/FormCombox.js');
thin.imports('/public/home/resource/compress.js');
thin.imports('/public/plug/LoadEffect/LoadEffect.js');

thin.use(function() {
	// 頁面加載完畢
	thin.effect();

	// 绑定压缩上传图片按钮
	$(document).on('change', '[layout-mark=uploadFile]', thin.uploadImage);

	form = new FormCombox();

	proid = thin.data['data-id'];
	if(proid > 0) {
		var hash = window.location.hash;
		if(/perfect/gi.test(hash)) {
			// 初始化完善項目
			initPerfectProject();
		} else {
			// 初始化編輯項目
			initEditProject();
		}
	}

	$(document).on('click', '#btn-selbp', function() {
		//selectBP();
		document.getElementById('uploadfile-pdf').click();
	}).on('click', '.prolists', function(e) {
		var that = $(this);
		that.addClass('active');
		$('#btn-selbp-title').html(that.attr('data-title'));
		data_bp = $(this).attr('data-bp_uri');
		layer.closeAll();
	}).on('click', '#btn-selbp-title', function() {
		var uri = $(this).attr('data-uri');
		if (uri == '') return ;
		tool.__cookie.set('pdf_uri', uri);
		window.open("/pdf.html");
	});

	// 上传商业计划书
	$('#uploadfile-pdf').on('change', function(e) {
		var src,
			url = window.URL || window.webkitURL || window.mozURL,
			files = e.target.files;
		if(!files[0]) return null;
		if(url) {
			src = url.createObjectURL(files[0]);
		} else {
			src = e.target.result;
		}
		var u = $(this).attr('data-u');
		window[u].get($(this), files[0].name);
		var fileInput = this.files[0];
		var form = new FormData();
		form.append("file", fileInput);
		form.append("name", "file");
		form.append("document", "pdf");
		form.append("dir", 'upload');
		ajax().upload('/api?common.upload', form, window[u]);
		this.parentNode.reset();
	});

	$(document).on('click', '.uploadFiles-atlas a', function() {
		var that = $(this),
			_id = that.children('img').attr('data-id');
		layer.confirm('是否删除', {
				btn: ['删除', '取消']
			},
			function(index) {
				that.remove();
				delete atlasopt[_id];
				layer.close(index);
			},
			function(index) {
				layer.close(index);
			}
		);
	});
});

var form,
	proid,
	data_opts = {}, // 记录opts的数据
	data_opts_index = 0, // 记录opts的次数
	jude_editpro = false,
	data_pro_dei = false, // 記錄項目詳情信息
	__getdata_proget = {},
	__getdata_opts = {},
	__getdata_proedit = {},
	__getdata_bpupload = {},
	data_bp,
	data_bplist,
	cache_optdata_index = 0;

// 初始化編輯項目
function initEditProject() {
	$('#submit-edit-project').on('click', submitEditProject);

	layer.load(0, {
		shade: [0.08, '#000']
	});
	// 加載項目詳情數據
	__getdata_proget['model'] = 0;
	__getdata_proget['project_id'] = proid;
	factory.request('_project_get', 1);

	// 判斷是否緩存了conf.opts
	if(tool.__storage.get('conf_opts_data')) {
		// 讀取緩存
		data_opts['stage'] = tool.__storage.get('conf_opts_stage');
		data_opts['round'] = tool.__storage.get('conf_opts_round');
		data_opts['industry'] = tool.__storage.get('conf_opts_industry');
		data_opts['city'] = tool.__storage.get('conf_opts_city');
		// 渲染表單
		data_opts_index = 4;
		vcre();
	} else {
		// 讀取新數據
		thin.imports('/public/configure/conf.opts.js', function() {
			__getdata_opts.name = 'stage';
			factory.request('_common_opts', ['stage', '项目阶段']);
			__getdata_opts.name = 'round';
			factory.request('_common_opts', ['round', '项目轮次']);
			__getdata_opts.name = 'industry';
			factory.request('_common_opts', ['industry', '所属行业']);
			__getdata_opts.name = 'city';
			factory.request('_common_opts', ['city', '所在城市']);
		});
	}
}

// 獲取項目詳情回調
function __complete_proget(res, unkn) {
	if(res.status == 200) {
		if(unkn == 1) {
			// 編輯項目詳情
			data_pro_dei = res.data;
			vcre();
		} else if(unkn == 2) {
			// 完善項目信息
			bindProjectDetails(res.data);
		}
	} else {
		layer.msg(res.error, {
			icon: 2,
			time: 800
		});
	}
}

// 讀取opts回調
function __complete_opts(res, unkn) {
	data_opts_index = data_opts_index + 1;
	if(res.status == 200) {
		cache_optdata_index = cache_optdata_index + 1;
		data_opts[unkn[0]] = [res.data, unkn[1]];
		tool.__storage.set('conf_opts_' + unkn[0], [res.data, unkn[1]], 36000000);
		if(data_opts_index == 4) tool.__storage.set('conf_opts_data', 'true', 36000000);
	} else {
		// nothing
	}
	if(data_opts_index == 4) {
		// 判断是否全部读取了opts信息和详情
		vcre();
	}
}

// 判断是否全部读取了opts信息和详情
function vcre() {
	if(data_pro_dei && data_opts_index == 4) {
		layer.closeAll('loading');
		createForm();
	}
}

// 渲染表单
function createForm() {
	var ele_logo = "";
	ele_logo += '<input type="hidden" name="logo" id="ipt-pc-logo" value="' + data_pro_dei['logo'] + '" />';
	ele_logo += '<form class="uploadFiles" action="/*" onsubmit="return false;">';
	ele_logo += '<img src="' + data_pro_dei['logo'] + '" id="img-pc-logo" />';
	ele_logo += '<input layout-mark="uploadFile" type="file" multiple="" data-u="__ulogo" />';
	ele_logo += '</form>';
	ele_logo += '<p class="c-888 fs14r m-t-1x">logo尺寸：90px * 90px</p>';

	var ele_als = '';
	ele_als += '<div class="uploadFiles-atlas clearfix" id="uploadFiles-atlas">';

	if(data_pro_dei['atlas'] != '') {
		var atlas_arr = JSON.parse(data_pro_dei.atlas);
		for(var i in atlas_arr) {
			_atlasid = new Date().getTime() + String(i);
			atlasopt[_atlasid] = atlas_arr[i];
			var tmpl = '<a href="javascript:;"><img src="' + atlas_arr[i] + '" data-id="' + _atlasid + '" /></a>';
			ele_als += tmpl;
		}
	}

	ele_als += '<form class="add" action="/*" onsubmit="return false;">';
	ele_als += '<i class="icon-increase fs42r"></i>';
	ele_als += '<input layout-mark="uploadFile" type="file" multiple="" data-u="__uatlas" />';
	ele_als += '</form>';
	ele_als += '</div>';

	var form_opt = [{
		'type': 'custom',
		'label': '基本信息',
		'class': 'fs16r weight-bold',
		'html': '<div class="b-line-b" style="height:20px"> </div>'
	}, {
		'type': 'custom',
		'label': 'logo',
		'class': 'uploadFilesBox',
		'html': ele_logo
	}, {
		'type': 'text',
		'label': '项目标题',
		'name': 'title',
		'value': ''
	}, {
		'type': 'text',
		'label': '一句话介绍',
		'name': 'words',
		'value': ''
	}, {
		'type': 'custom',
		'label': '融资信息',
		'class': 'fs16r weight-bold',
		'html': '<div class="b-line-b" style="height:20px"> </div>'
	}];

	for(var i in data_opts) {
		var data = data_opts[i][0];
		var arr = [];
		for(var o in data) {
			arr.push({
				'value': data[o],
				'text': data[o]
			});
		}
		form_opt.push({
			'type': 'select',
			'label': data_opts[i][1],
			'name': i,
			'text': '请选择',
			'option': arr
		});
	}

	form_opt.push({
		'type': 'text',
		'label': '拟融资金额(万)',
		'name': 'money',
		'value': ''
	}, {
		'type': 'custom',
		'label': '详细信息',
		'class': 'fs16r weight-bold',
		'html': '<div class="b-line-b" style="height:20px"> </div>'
	}, {
		'type': 'textarea',
		'label': '项目简介',
		'name': 'introduction',
		'value': ''
	}, {
		'type': 'custom',
		'label': '项目图集',
		'class': 'uploadFilesBox',
		'html': ele_als
	});

	for(var i in form_opt) {
		var name = form_opt[i].name;
		if(typeof data_pro_dei[name] != 'undefined') {
			if(form_opt[i].type == 'select') {
				form_opt[i]['text'] = data_pro_dei[name];
			}
			form_opt[i]['value'] = data_pro_dei[name];
		}
	}

	form.addCombox(form_opt);
	form.reader('layout-form-edit');
	$('#tpl-edit-template').show();
}

// 提交編輯項目
function submitEditProject() {
	var data_opt = {};
	data_opt['project_id'] = proid;
	$('#layout-form-edit').find('input, textarea').each(function() {
		var name = this.name;
		data_opt[name] = this.value;
	});

	var arr = [];
	for(var i in atlasopt) {
		arr.push(atlasopt[i]);
	}
	if(arr.length > 0) data_opt['atlas'] = JSON.stringify(arr);

	layer.load(0, {
		shade: [0.08, '#000']
	});

	// 提交編輯項目
	__getdata_proedit = data_opt;
	factory.request('_project_edit');
}

// 編輯項目回調
function __complete_proedit(res) {
	layer.closeAll('loading');
	if(res.status == 201) {
		layer.msg('编辑成功', {
			icon: 1,
			time: 1200
		}, function() {
			window.history.go(-1);
		});
	} else {
		layer.msg(res.error, {
			icon: 2,
			time: 800
		});
	}
}

// 初始化完善項目
function initPerfectProject() {
	// 加載項目詳情數據
	__getdata_proget['model'] = 0;
	__getdata_proget['project_id'] = proid;
	factory.request('_project_get', 2);

	// 綁定完善項目按鈕
	$('#submit-perfect-project').on('click', submitPerfectProject);

	// 綁定團隊成員點擊事件
	$('#layout-form-perfect').on('click', '.btn-memberlist', function() {
		var that = $(this),
			cmd = that.attr('data-cmd');
		if(cmd == 'edit') {
			var parent = that.parent().parent();
			membersModal(parent);
		} else if(cmd == 'del') {
			layer.confirm('是否删除？', {
				btn: ['删除', '取消'] //按钮
			}, function(index) {
				submitPerfectProject(false);
				that.parent().parent().remove();
				layer.close(index);
			}, function(index) {
				layer.close(index);
			});
		}
	});
}

// 填充完善资料
function bindProjectDetails(data) {
	var bp_name = data.bp;
	//bp_name = bp_name != '' ? bp_name.substring(bp_name.lastIndexOf('/')+1, bp_name.length) : '';
	bp_name = bp_name != '' ? '已上传商业计划书' : '未上传商业计划书';
	var form_arr = [{
		'type': 'switch',
		'label': '是否注册公司',
		'name': 'isCompany',
		'switch': [{
			'text': '否',
			'value': 'off',
			'checked': (data.company == '' ? true : false),
			'callback': function(status) {
				$('.isCompany').removeClass('show');
			}
		}, {
			'text': '是',
			'value': 'on',
			'checked': (data.company != '' ? true : false),
			'callback': function(status) {
				$('.isCompany').addClass('show');
			}
		}]
	}, {
		'type': 'text',
		'label': '公司名称',
		'class': 'isCompany ' + (data.company == '' ? '' : 'show'),
		'name': 'company',
		'value': data.company,
		'placeholder': '请输入'
	}, {
		'type': 'select',
		'label': '团队规模',
		'name': 'team',
		'text': '请选择',
		'option': [{
			'text': '1-10人',
			'value': '1-10人'
		}, {
			'text': '11-20人',
			'value': '11-20人'
		}, {
			'text': '21-50人',
			'value': '21-50人'
		}, {
			'text': '51-100人',
			'value': '51-100人'
		}, {
			'text': '101-200人',
			'value': '101-200人'
		}, {
			'text': '201-500人',
			'value': '201-500人'
		}, {
			'text': '500人以上',
			'value': '500人以上'
		}]
	}, {
		'type': 'custom',
		'label': '添加团队成员',
		'html': '<a href="javascript:membersModal();" class="c-3688E9 fs14r">添加成员</a><ul class="members-view" id="people-list">' + analysis(data.members) + '</ul>'
	}, {
		'type': 'custom',
		'label': '商业计划书',
		'html': '<a href="javascript:;" data-uri="' + data.bp + '" id="btn-selbp-title" class="c-3688E9 fs14r m-r-2x">' + bp_name + '</a><a href="javascript:;" class="btn-memberlist bg-3688e9" id="btn-selbp">上传商业计划书</a>'
	}];

	var jude = false;
	for(var i in form_arr[2]['option']) {
		var list = form_arr[2]['option'][i];
		if(list.value == data.team) {
			list.selected = true;
			jude = true;
			break;
		}
	}
	if(!jude) form_arr[2]['option'][0]['selected'] = true;

	data_bp = data.bp;

	form.addCombox(form_arr);
	form.reader('layout-form-perfect');
	$('#tpl-perfect-template').show();
}

// 解析members
function analysis(members) {
	var m = JSON.parse(members);
	var ele = '';
	for(var i in m) {
		var ms = JSON.parse(m[i]),
			mi = JSON.parse(ms['info']);
		ele += '<li href="javascript:;" class="memberlists clearfix">';
		ele += '<font class="pd-members-tag">' + mi['p_psn'] + '</font>';
		ele += '<font class="pd-members-name">' + ms.name + '</font>';
		ele += '<textarea style="display:none;">' + m[i] + '</textarea>';
		ele += '<div>';
		ele += '<a href="javascript:;" class="btn-memberlist bg-3688e9" data-cmd="edit">编辑</a>';
		ele += '<a href="javascript:;" class="btn-memberlist bg-e64340" data-cmd="del">删除</a>';
		ele += '</div>';
		ele += '</li>';
	}
	return ele;
}

// 完善資料
function submitPerfectProject(jude) {
	var data_opt = {};
	data_opt['project_id'] = proid;
	var isCompany = $('input[name=isCompany]').val();
	if(isCompany == 'on') {
		data_opt['company'] = $('input[name=company]').val();
	} else {
		$('input[name=company]').val('');
		data_opt['company'] = '';
	}
	data_opt['team'] = $('input[name=team]').val();
	var arr = [];
	$('#people-list').find('textarea').each(function(index) {
		arr.push($(this).val());
	});
	data_opt['members'] = JSON.stringify(arr);
	data_opt['bp'] = data_bp || '';
	layer.load(0, {
		shade: [0.08, '#000']
	});
	// 提交完善資料
	__getdata_procom = data_opt;
	factory.request('_project_complete', jude);
}

// 完善資料回調
function __complete_procom(res, unkn) {
	layer.closeAll('loading');
	if(res.status == 201) {
		if (unkn) {
			layer.msg('编辑成功', {
				icon: 1,
				time: 1200
			}, function() {
				window.history.go(-1);
			});
		}
	} else {
		layer.msg(res.error, {
			icon: 2,
			time: 800
		});
	}
}

// 彈窗添加核心成員
function membersModal(obj) {
	var data = {};
	if(obj) {
		data = obj.find('textarea').val();
		data = JSON.parse(data);
		var _info = data['info'];
		data['info'] = JSON.parse(_info);
	}
	form.addCombox([{
		'type': 'text',
		'label': '姓名',
		'name': 'ipt-p-name',
		'value': (obj ? data.name : ''),
		'placeholder': '成员名称'
	}, {
		'type': 'select',
		'label': '职位',
		'class': 'iptmembersinfo',
		'name': 'p_psn',
		'value': (obj ? data.info.p_psn : ''),
		'text': (obj && data.info.p_psn ? data.info.p_psn : '请选择'),
		'option': ['CEO', 'CFO', 'CTO', 'COO', '其他创始人', '员工']
	}, {
		'type': 'select',
		'label': '最高学历',
		'class': 'iptmembersinfo',
		'name': 'p_edn',
		'value': (obj ? data.info.p_edn : ''),
		'text': (obj && data.info.p_edn ? data.info.p_edn : '请选择'),
		'option': ['博士及以上', '硕士', '本科', '大专', '中专', '中专以下']
	}, {
		'type': 'select',
		'label': '职业经历',
		'class': 'iptmembersinfo',
		'name': 'p_ple',
		'value': (obj ? data.info.p_ple : ''),
		'text': (obj && data.info.p_ple ? data.info.p_ple : '请选择'),
		'option': [
			'BAT或行业顶级公司工作10年以上',
			'BAT或行业顶级公司工作5-10年以上',
			'BAT或行业顶级公司工作5年以下',
			'在行业内其他公司工作10年以上',
			'在行业内其他公司工作5-10年',
			'在行业内其他公司工作5年以下'
		]
	}, {
		'type': 'select',
		'label': '管理经验',
		'class': 'iptmembersinfo',
		'name': 'p_mte',
		'value': (obj ? data.info.p_mte : ''),
		'text': (obj && data.info.p_mte ? data.info.p_mte : '请选择'),
		'option': [
			'有大中型企业(年营业收入超过5000万元人民币以上)的高层管理经验',
			'有大中型企业的中层管理经验或小型企业的高层管理或技术总监经验',
			'有大中型企业的中层管理经验或小型企业的高层管理经验',
			'有大中型企业的基层团队管理经验或小型企业的中层管理经验',
			'有小团队的管理经验',
			'尚无管理经验，但体现出较强的管理能力'
		]
	}, {
		'type': 'select',
		'label': '创业经历',
		'class': 'iptmembersinfo',
		'name': 'p_cte',
		'value': (obj ? data.info.p_cte : ''),
		'text': (obj && data.info.p_cte ? data.info.p_cte : '请选择'),
		'option': [
			'有多次创业成功的经历',
			'有多次创业的经历，但部分成功，部分失败',
			'有多次创业的经历，但都失败了',
			'有一次创业的经历，且成功了',
			'有一次创业的经历，且失败了',
			'这是第一次创业'
		]
	}]);

	layer.open({
		type: 0,
		title: (obj ? '编辑核心成员' : '添加核心成员'),
		content: '<form class="layout-form m-t-4x" id="layout-form-members-modal" action="/*" onsubmit="return false;"></form>',
		area: ['680px', '720px'],
		btn: ['确定', '取消'],
		yes: function(index) {
			addPeople((obj || null));
			layer.close(index);
		},
		btn2: function(index) {
			layer.close(index);
		},
		success: function() {
			form.reader('layout-form-members-modal');
		}
	});
}

// 添加成員
function addPeople(unkn) {
	var data_opt = {
		'name': $('[name=ipt-p-name]').val()
	};
	var info_opt = {};
	$('.iptmembersinfo').each(function() {
		var name = $(this).find('input').attr('name');
		info_opt[name] = $(this).find('input').val();
	});
	data_opt['info'] = JSON.stringify(info_opt);
	if(unkn) {
		unkn.find('.pd-members-tag').text(info_opt['p_psn']);
		unkn.find('.pd-members-name').text(data_opt['name']);
		unkn.find('textarea').val(JSON.stringify(data_opt));
	} else {
		var ele = '';
		ele += '<li href="javascript:;" class="memberlists clearfix">';
		ele += '<font class="pd-members-tag">' + info_opt['p_psn'] + '</font>';
		ele += '<font class="pd-members-name">' + data_opt['name'] + '</font>';
		ele += '<textarea style="display:none;">' + JSON.stringify(data_opt) + '</textarea>';
		ele += '<div>';
		ele += '<a href="javascript:;" class="btn-memberlist bg-3688e9" data-cmd="edit">编辑</a>';
		ele += '<a href="javascript:;" class="btn-memberlist bg-e64340" data-cmd="del">删除</a>';
		ele += '</div>';
		ele += '</li>';
		$('#people-list').append(ele);
	}
	submitPerfectProject(false);
}

// 上传logo回调
var __ulogo = {
	'imgelem': function() {
		return document.getElementById('img-pc-logo');
	},
	'process': function(base64) {

	},
	'complete': function(res) {
		if(res.status == 201) {
			$('#ipt-pc-logo').val(res.data.uri);
		} else {
			layer.msg(res.error, {
				icon: 2,
				time: 800
			});
		}
	}
}

var atlasopt = {},
	_atlasid;

// 上传图集回调
var __uatlas = {
	'imgelem': function() {
		return document.createElement('img');
	},
	'process': function(base64) {
		_atlasid = new Date().getTime();
		atlasopt[_atlasid] = base64;
		var tmpl = '<a href="javascript:;"><img src="' + base64 + '" data-id="' + _atlasid + '" /></a>';
		$("#uploadFiles-atlas").prepend($(tmpl));
	},
	'complete': function(res) {
		if(res.status == 201) {
			atlasopt[_atlasid] = res.data.uri;
		} else {
			layer.msg(res.error, {
				icon: 2,
				time: 800
			});
		}
	}
}

// 上傳商業計劃書回調
var __ubp = {
	'get': function(obj, name) {
		//$('#btn-selbp-title').html(name);
		__getdata_bpupload['title'] = name;
	},
	'onload': function(res) {
		if(res.status == 201) {
			data_bp = res.data.uri;
			
			var bp_name = res.data.uri;
			//bp_name != '' ? bp_name = bp_name.substring(bp_name.lastIndexOf('/')+1, bp_name.length) : '';
			bp_name = '商业计划书上传成功';
			$('#btn-selbp-title').html(bp_name);
			
			layer.load(0, {
				shade: [0.08, '#000']
			});
			__getdata_bpupload['bp_uri'] = res.data.uri;
			factory.request('_bp_upload');
		} else {
			layer.msg(res.error, {
				icon: 2,
				time: 800
			});
		}
	},
	'onerror': function(res) {
		layer.msg('上传失败，请检测网络', {
			icon: 2,
			time: 800
		});
	}
}

// 上傳商業計劃書回調
function __complete_bpupload(res) {
	layer.closeAll('loading');
	if(res.status == 201) {
		var opt = res.data;
		opt['id'] = new Date().getTime();
		//data_bplist.unshift(opt);
	} else {
		layer.msg(res.error, {
			icon: 2,
			time: 800
		});
	}
}

/*// 選擇商業計劃書
function selectBP() {
	// 判斷是否有保存
	if(!data_bplist) {
		layer.load(0, {
			shade: [0.08, '#000']
		});
		// 獲取項目計劃書回調
		factory.request('_bp_volist');
	} else {
		createBpv(data_bplist);
	}
}

// 獲取項目計劃書回調
function __complete_bpvolist(res) {
	layer.closeAll('loading');
	if(res.status == 200) {
		data_bplist = res.data;
		createBpv(res.data);
	} else {
		layer.msg(res.error, {
			icon: 2,
			time: 800
		});
	}
}

// 創建商業計劃書列表
function createBpv(data) {
	var ele = '';
	ele += '<div class="p-x-3x p-y-3x clearfix" id="bplists">';
	for(var i in data) {
		ele += createBpvNode(data[i]);
	}
	ele += '</div>';
	layer.open({
		type: 1,
		title: '选择项目',
		content: ele,
		area: ['532px', '480px'],
		btn: ['上传新计划书', '取消'],
		yes: function(index) {
			document.getElementById('uploadfile-pdf').click();
			layer.close(index);
		},
		btn2: function(index) {
			layer.close(index);
		}
	});
}

// 創建商業計劃書
function createBpvNode(data) {
	var ele = '';
	ele += '<a href="javascript:;" class="prolists text-center" data-id="' + data.id + '"  data-bp_uri="' + data.bp_uri + '" data-title="' + data.title + '">';
	ele += '<i class="icon-files-pdf fs42r c-f57c00 lhx v-middle"></i>';
	ele += '<p class="ellipsis text-center fs14r">' + data.title + '</p>';
	ele += '</a>';
	return ele;
}*/